#ifndef EVENT_LOAD_MAP_H_INCLUDED_169879
#define EVENT_LOAD_MAP_H_INCLUDED_169879
//-----------------------------------------------------------------------------
// Copyright (c) 2011 David Waby
// Initially created on 03/11/2011
//-----------------------------------------------------------------------------

#include "Event.h"

//-----------------------------------------------------------------------------
class EventLoadMap : public Event
{
public:
									EventLoadMap(int const i_mapID, Point2 const * i_startPosition) 
										: Event(Event::EventType::LoadMap), m_mapID(i_mapID), m_startPosition(*i_startPosition) {}
									EventLoadMap(EventLoadMap const &rhs)
										: Event(rhs), m_mapID(rhs.GetMapID()), m_startPosition(*rhs.GetStartPosition()) {}
	virtual							~EventLoadMap() {}

	inline int						GetMapID() const { return m_mapID; }
	inline Point2 const *			GetStartPosition() const { return &m_startPosition; }

private:

	int								m_mapID;
	Point2 const					m_startPosition;

									EventLoadMap& operator = (EventLoadMap const &rhs);
};

//-----------------------------------------------------------------------------
#endif // EVENT_LOAD_MAP_H_INCLUDED_169879
